package com.tql.test_07;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

/*
*   使用线程池的好处
*   1.降低资源消耗，统一由线程池创建和销毁
*   2.提升系统性能 （用的时候不需要每次都去创建，创建和注销非常销毁系统资源）
*   3.方便管理
*   线程重复使用 ，方便管理
*
* */
public class ThreadPoolTest {
    public static void main(String[] args) {
        //单一线程池，里面只存放一个线程
        ExecutorService executorService = Executors.newSingleThreadExecutor();
        //固定线程池程池，里面只存放指定个数的线程（参数不易过大）
        ExecutorService executorService1 = Executors.newFixedThreadPool(5);
        //缓存线程池，遇强则强，与弱则弱（可以实现线程数量自动调节，还有跟电脑CPU有关，线程数量不会很大）
        ExecutorService executorService2 = Executors.newCachedThreadPool();
        for (int i = 0; i < 100; i++) {
            //线程创建交给线程池去创建
            executorService2.execute(()->{
                System.out.println(Thread.currentThread().getName()+"正在执行");
            });

        }

    }
}
